import i18n from '@/lang/lang-set'
import { MessageBox } from 'element-ui'

export function ui(Vue) {
  Vue.prototype.$confirmBox = (operate, type) => {
    return new Promise((resolve, reject) => {
      MessageBox.confirm(i18n.t('message.whetherConfirm') + operate + '?', '确认提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: type
      })
        .then(() => {
          resolve()
        })
        .catch(() => {
          // reject()
        })
    })
  }

  // 表格头部样式全局方法
  Vue.prototype.$headerCellStyle = ({ col, depth, td }) => {
    if (
      (td.prop && td.prop.indexOf('base') !== -1 && depth === 2) ||
      (td.label && td.label.indexOf('Base') !== -1 && depth === 1)
    ) {
      return 'background: rgba(250,241,229,1);color: rgb(0,38,74)'
    } else if (
      (td.label && td.label.indexOf('New') !== -1 && depth === 1) ||
      (td.prop &&
        (td.prop.indexOf('new') !== -1 || td.prop.indexOf('commodity') !== -1) &&
        depth === 2)
    ) {
      return 'background: rgba(200,193,210,1);color: rgb(0,38,74)'
    } else if (
      td.prop &&
      (td.prop.indexOf('gap') !== -1 || td.prop.indexOf('statusCompare') !== -1) &&
      depth === 1
    ) {
      return 'background: rgba(123,181,222,1);color: rgb(0,38,74)'
    } else if (
      (td.label && td.label.indexOf('GCM') !== -1) ||
      (td.prop && td.prop.indexOf('gcm') !== -1 && depth === 2)
    ) {
      return 'background: rgba(206,192,170,1);color: rgb(0,38,74)'
    } else if (td.prop && depth === 1) {
      return { backgroundColor: 'rgb(154,182,178,1)', color: 'rgb(0,38,74)' }
    }
  }
}
